package com.lingxu.module.process.mapper;

import com.lingxu.module.process.controller.vo.ModelVO;
import com.lingxu.module.process.controller.vo.TModelActivityVO;
import com.lingxu.module.process.model.TModelActivity;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;


import java.util.List;
import java.util.Map;

/**
 * 模型审批默认节点信息 Mapper接口
 *
 * @author admin
 * @since 2025-07-30
 */
@Mapper
public interface TModelActivityMapper extends BaseMapper<TModelActivity> {
    /**
     * 查询模型审批默认节点信息
     *
     * @return
     */
    List<TModelActivityVO> selectTModelActivityList(@Param("query") TModelActivityVO vo);

    IPage<TModelActivityVO> pageList(@Param("page") Page<TModelActivityVO> page, @Param("query") TModelActivityVO vo);
    IPage<ModelVO> modelPageList(@Param("page") Page<ModelVO> page, @Param("query") ModelVO vo);
    IPage<Map<String, Object>> modelIssuePageList(@Param("page") Page<ModelVO> page, @Param("query") ModelVO vo);


    List<TModelActivityVO> getDataForExport(@Param("query") TModelActivityVO vo);

    void createTempTable(@Param("batchFlag")String batchFlag);
    void insertTempTable(@Param("list") List<TModelActivityVO> dataList, @Param("batchFlag")String batchFlag);
    void insertTable(@Param("batchFlag")String batchFlag);
    void dropTempTable(@Param("batchFlag")String batchFlag);

    List<TModelActivityVO> getAll(@Param("query") TModelActivityVO vo);

    List<ModelVO> getDataForYJ(@Param("query") ModelVO vo);
}
